Джерело даних - European Centre for Disease Prevention and Control.
Дані на 17 квітня
Динаміка кількості нових смертей за день
Країни із загальною кількістю смертей більше 300 на 1 млн. населення
Країни із загальною кількістю смертей від 110 до 300 на 1 млн. населення
Країни із загальною кількістю смертей від 55 до 110 на 1 млн. населення
n too large, allowed maximum for palette Set1 is 9
Returning the palette you asked for with that many colors
Країни, де відбувається зростання денної смертності
Динаміка загальної кількості смертей на 1 млн. населення
Країни з кількістю смертей більше 180 на 1 млн. населення
Рівень летальності в різних країнах

LS0tDQp0aXRsZTogItCf0L7RiNC40YDQtdC90L3RjyDQtdC/0ZbQtNC10LzRltGXIENPVklELTE5INCyINGA0ZbQt9C90LjRhSDQutGA0LDRl9C90LDRhSINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KZWRpdG9yX29wdGlvbnM6IA0KY2h1bmtfb3V0cHV0X3R5cGU6IGlubGluZQ0KLS0tDQoNCg0KDQogDQpgYGB7ciBQYWNrYWdlcywgZXZhbD1GQUxTRSwgaW5jbHVkZT1GQUxTRX0NCm9wdGlvbnMoc2NpcGVuID0gOTk5KQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KGx1YnJpZGF0ZSkNCmxpYnJhcnkocGxvdGx5KQ0KbGlicmFyeShSQ29sb3JCcmV3ZXIpDQpsaWJyYXJ5KHJlYWR4bCkNCmxpYnJhcnkoaHR0cikNCmxpYnJhcnkoc2NhbGVzKQ0KbGlicmFyeSh6b28pDQoNCg0KYGBgDQoNCg0KDQpgYGB7ciBJbXBvcnQsIGluY2x1ZGU9RkFMU0V9DQoNCiN1cmwgPC0gcGFzdGUoImh0dHBzOi8vd3d3LmVjZGMuZXVyb3BhLmV1L3NpdGVzL2RlZmF1bHQvZmlsZXMvZG9jdW1lbnRzL0NPVklELTE5LWdlb2dyYXBoaWMtZGlzYnRyaWJ1dGlvbi13b3JsZHdpZGUtIixmb3JtYXQoU3lzLnRpbWUoKSwgIiVZLSVtLSVkIiksICIueGxzeCIsIHNlcCA9ICIiKQ0KDQp1cmw8LSJodHRwczovL3d3dy5lY2RjLmV1cm9wYS5ldS9zaXRlcy9kZWZhdWx0L2ZpbGVzL2RvY3VtZW50cy9DT1ZJRC0xOS1nZW9ncmFwaGljLWRpc2J0cmlidXRpb24td29ybGR3aWRlLnhsc3giDQoNCkdFVCh1cmwsIGF1dGhlbnRpY2F0ZSgiOiIsICI6IiwgdHlwZT0ibnRsbSIpLCB3cml0ZV9kaXNrKHRmIDwtIHRlbXBmaWxlKGZpbGVleHQgPSAiLnhsc3giKSkpDQp5ZXN0ZXJkYXk8LVN5cy5EYXRlKCktMQ0KDQojY3JuIDwtIHJlYWRfZXhjZWwoIkQ6XFxEb3dubG9hZHNcXENPVklELTE5LWdlb2dyYXBoaWMtZGlzYnRyaWJ1dGlvbi13b3JsZHdpZGUtMjAyMC0wMy0yMi54bHN4IikgJT4lDQpjcm4gPC0gcmVhZF9leGNlbCh0ZikgJT4lIHJlbmFtZShkYXRlPWRhdGVSZXAsQ291bnRyeT03LEluZmVjdGVkX25ldz1jYXNlcyxEZWF0aHNfbmV3PWRlYXRocywNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lvbj1jb250aW5lbnRFeHApICU+JQ0KICBtdXRhdGUoRGVhdGhzX25ldz1pZmVsc2UoQ291bnRyeT09IkZyYW5jZSImZGF0ZT09IjIwMjAtMDQtMDMiLDEzNTUsRGVhdGhzX25ldyksDQogICAgICAgICBEZWF0aHNfbmV3PWlmZWxzZShDb3VudHJ5PT0iRnJhbmNlIiZkYXRlPT0iMjAyMC0wNC0wNCIsMTEyMCxEZWF0aHNfbmV3KSwNCiAgICAgICAgIERlYXRoc19uZXc9aWZlbHNlKENvdW50cnk9PSJGcmFuY2UiJmRhdGU9PSIyMDIwLTA1LTE4IiwzMDAsRGVhdGhzX25ldyksDQogICAgICAgICBEZWF0aHNfbmV3PWlmZWxzZShDb3VudHJ5PT0iRnJhbmNlIiZkYXRlPT0iMjAyMC0wNS0yMCIsMTgzLERlYXRoc19uZXcpLA0KICAgICAgICAgRGVhdGhzX25ldz1pZmVsc2UoQ291bnRyeT09IlNwYWluIiZkYXRlPT0iMjAyMC0wNC0yNyIsMzMxLERlYXRoc19uZXcpLA0KICAgICAgICAgRGVhdGhzX25ldz1pZmVsc2UoQ291bnRyeT09IlNwYWluIiZkYXRlPT0iMjAyMC0wNC0yOCIsMzAxLERlYXRoc19uZXcpLA0KICAgICAgICAgRGVhdGhzX25ldz1pZmVsc2UoQ291bnRyeT09IlNwYWluIiZkYXRlPT0iMjAyMC0wNC0yOSIsMzI1LERlYXRoc19uZXcpLA0KICAgICAgICAgRGVhdGhzX25ldz1pZmVsc2UoQ291bnRyeT09Ikdlcm1hbnkiJmRhdGU9PSIyMDIwLTA1LTAxIiwxOTMsRGVhdGhzX25ldyksDQogICAgICAgICBEZWF0aHNfbmV3PWlmZWxzZShDb3VudHJ5PT0iR2VybWFueSImZGF0ZT09IjIwMjAtMDUtMDIiLDk0LERlYXRoc19uZXcpLA0KICAgICAgICAgZGF0ZT1hcy5EYXRlKGRhdGUpLTEsDQogICAgICAgICBDb3VudHJ5PXN0cl9yZXBsYWNlKENvdW50cnksIlVuaXRlZCBTdGF0ZXMgb2YgQW1lcmljYXxVbml0ZWRfU3RhdGVzX29mX0FtZXJpY2EiLCJVU0EiKSwNCiAgICAgICAgIENvdW50cnk9c3RyX3JlcGxhY2UoQ291bnRyeSwiVW5pdGVkIEtpbmdkb218VW5pdGVkIGtpbmdkb218VW5pdGVkX0tpbmdkb20iLCJVSyIpLA0KICAgICAgICAgQ291bnRyeT1zdHJfcmVwbGFjZShDb3VudHJ5LCJfIiwiICIpDQogICAgICAgICApICU+JQ0KICBzZWxlY3QoLWMoZGF5LG1vbnRoLHllYXIpKSAlPiUgDQogIGFycmFuZ2UoQ291bnRyeSxkYXRlKSAlPiUNCiAgY29tcGxldGUobmVzdGluZyhDb3VudHJ5KSxkYXRlPXNlcS5EYXRlKGFzLkRhdGUoIjIwMTktMTItMzAiKSx5ZXN0ZXJkYXksYnk9ImRheSIpKSAlPiUNCiAgZ3JvdXBfYnkoQ291bnRyeSkgJT4lDQogICNjb21wbGV0ZShkYXRlPXNlcS5EYXRlKGFzLkRhdGUoIjIwMTktMTItMzAiKSxTeXMuRGF0ZSgpLTEsYnk9ImRheSIpKSAlPiUgDQogIG11dGF0ZShJbmZlY3RlZD1jdW1zdW0ocmVwbGFjZV9uYShJbmZlY3RlZF9uZXcsMCkpLA0KICAgICAgICAgRGVhdGhzPWN1bXN1bShyZXBsYWNlX25hKERlYXRoc19uZXcsMCkpLA0KICAgICAgICAgZ2VvSWQ9bWF4KGdlb0lkLG5hLnJtID0gVCksDQogICAgICAgICBwb3BEYXRhMjAxOD1tYXgocG9wRGF0YTIwMTgsbmEucm0gPSBUKSwNCiAgICAgICAgIHJlZ2lvbj1tYXgocmVnaW9uLG5hLnJtID0gVCksDQogICAgICAgICBsZXRhbD1EZWF0aHMqMTAwL0luZmVjdGVkLA0KICAgICAgICAgKSAlPiUNCiAgdW5ncm91cCgpICU+JQ0KICAgIG11dGF0ZSgNCiAgICAgICAgRGVhdGhzX3BjPURlYXRocyoxMDAwMDAwL3BvcERhdGEyMDE4LA0KICAgICAgICBEZWF0aHNfbmV3X3BjPURlYXRoc19uZXcqMTAwMDAwMC9wb3BEYXRhMjAxOCwNCiAgICAgICAgSW5mZWN0ZWQ9aWZlbHNlKENvdW50cnk9PSJJdGFseSImZGF0ZT09IjIwMjAtMDMtMTQiLDIxMTU3LEluZmVjdGVkKSwNCiAgICAgICAgRGVhdGhzPWlmZWxzZShDb3VudHJ5PT0iSXRhbHkiJmRhdGU9PSIyMDIwLTAzLTE0IiwxNDQxLERlYXRocyksDQogICAgICAgIEluZmVjdGVkPWlmZWxzZShDb3VudHJ5PT0iTm9yd2F5IiZkYXRlPT0iMjAyMC0wMy0xMyIsODAwLEluZmVjdGVkKSwNCiAgICAgICAgSW5mZWN0ZWQ9aWZlbHNlKENvdW50cnk9PSJTd2l0emVybGFuZCImZGF0ZT09IjIwMjAtMDMtMTYiLDIzNTMsSW5mZWN0ZWQpLA0KICAgICAgICBEZWF0aHM9aWZlbHNlKENvdW50cnk9PSJTd2l0emVybGFuZCImZGF0ZT09IjIwMjAtMDMtMTYiLDE1LERlYXRocyksDQogICAgICAgIERlYXRocz1pZmVsc2UoQ291bnRyeT09IlVTIiZkYXRlPT0iMjAyMC0wMy0xOSIsMjAwLERlYXRocyksDQogICAgICAgICNEZWF0aHNfbmV3ID0gaWZlbHNlKGlzLm5hKERlYXRoc19uZXcpfERlYXRoc19uZXc9PTAsRGVhdGhzLWxhZyhEZWF0aHMpLERlYXRoc19uZXcpDQopICU+JQ0KICBmaWx0ZXIoIShDb3VudHJ5PT0iU3BhaW4iICYgZGF0ZT09eWVzdGVyZGF5KSkgJT4lDQogIGZpbHRlcighc3RyX2RldGVjdChDb3VudHJ5LCJpbnRlcm5hdGlvbmFsIikpDQoNCg0KDQoNCiMgY3JuICU+JSBmaWx0ZXIoQ291bnRyeT09IlVTIikgJT4lIGFycmFuZ2UoZGVzYyhkYXRlKSkgJT4lIFZpZXcoKQ0KI2NybiAlPiUgZmlsdGVyKENvdW50cnk9PSJGcmFuY2UiKSAlPiUgYXJyYW5nZShkZXNjKGRhdGUpKSAlPiUgVmlldygpDQojIGNybiAlPiUgZmlsdGVyKENvdW50cnk9PSJTcGFpbiIpICU+JSBhcnJhbmdlKGRlc2MoZGF0ZSkpICU+JSBWaWV3KCkNCiMgY3JuICU+JSBmaWx0ZXIoQ291bnRyeT09Ikdlcm1hbnkiKSAlPiUgYXJyYW5nZShkZXNjKGRhdGUpKSAlPiUgVmlldygpDQojIGNybiAlPiUgZmlsdGVyKENvdW50cnk9PSJJdGFseSIpICU+JSBhcnJhbmdlKGRlc2MoZGF0ZSkpICU+JSBWaWV3KCkNCiMgY3JuICU+JSBmaWx0ZXIoQ291bnRyeT09IlN3aXR6ZXJsYW5kIikgJT4lIGFycmFuZ2UoZGVzYyhkYXRlKSkgJT4lIFZpZXcoKQ0KIyBjcm4gJT4lIGZpbHRlcihDb3VudHJ5PT0iSXJlbGFuZCIpICU+JSBhcnJhbmdlKGRlc2MoZGF0ZSkpICU+JSBWaWV3KCkNCg0KDQoNCmBgYA0KDQoNCmBgYHtyIFRyYW5zZm9ybWF0aW9ucywgaW5jbHVkZT1GQUxTRX0NCg0Kc3RhcnRfaTwtMTAwDQpzdGFydF9kPC01DQoNCmNybjwtY3JuICU+JSANCiAgZ3JvdXBfYnkoQ291bnRyeSkgJT4lDQogIG11dGF0ZShEZWF0aHNfbmV3X3JvbGwgPSByb2xsbWVhbihEZWF0aHNfbmV3LDUsZmlsbCA9IE5BLGFsaWduPSJyaWdodCIpICU+JSByb3VuZChkaWdpdHMgPSAwKSwNCiAgICAgICAgIHRvdGFsRDMwPURlYXRoc19uZXdbKG4oKS0zMCk6bigpXSAlPiUgc3VtKCksDQogICAgICAgICB0b3RhbEQzMF9wYz10b3RhbEQzMCoxMDAwMDAwL3BvcERhdGEyMDE4LA0KICAgICAgICAgbGFzdDdkPURlYXRoc19uZXdbKG4oKS03KTpuKCldICU+JSBzdW0oKSwNCiAgICAgICAgIGxhc3QxNGQ9RGVhdGhzX25ld1sobigpLTE1KToobigpLTgpXSAlPiUgc3VtKCksDQogICAgICAgICB0cmVuZD0obGFzdDdkL2xhc3QxNGQpICU+JSByb3VuZChkaWdpdHMgPSAyKQ0KICAgICAgICAgKSAlPiUgdW5ncm91cCgpDQoNCmNybjE8LWNybiAlPiUgDQogICAgICBmaWx0ZXIoIUNvdW50cnkgJWluJSBjKCJPdGhlcnMiLCJDaGluYSIsIklyYW4iKSkgJT4lDQogIGZpbHRlcihJbmZlY3RlZD5zdGFydF9pKSAlPiUNCiAgZ3JvdXBfYnkoQ291bnRyeSkgJT4lDQogIG11dGF0ZShvcmQ9MTpuKCksDQogICAgICAgICB0b3RhbD1tYXgoSW5mZWN0ZWQpLA0KICAgICAgICAgdG90YWxEPW1heChEZWF0aHMpLA0KICAgICAgICAgbj1uKCksDQogICAgICAgICBkZWF0aF9yYXRlPURlYXRocykgJT4lDQogICAgdW5ncm91cCgpDQoNCg0KY3JuMjwtY3JuICU+JSANCiAgZmlsdGVyKERlYXRocz5zdGFydF9kKSAlPiUNCiAgZmlsdGVyKCFDb3VudHJ5ICVpbiUgYygiT3RoZXJzIiwiQ2hpbmEiKSkgJT4lDQogIGdyb3VwX2J5KENvdW50cnkpICU+JQ0KICBtdXRhdGUob3JkPTE6bigpLA0KICAgICAgICAgdG90YWw9bWF4KERlYXRocyksDQogICAgICAgICB0b3RhbF9wYz10b3RhbCoxMDAwMDAwL3BvcERhdGEyMDE4LA0KICAgICAgICAgbj1uKCkpICU+JQ0KICAgIHVuZ3JvdXAoKSAlPiUNCiAgZmlsdGVyKERlYXRoc19uZXc+PTApDQoNCmNybjM8LSBjcm4gJT4lICANCiAgZmlsdGVyKCFDb3VudHJ5ICVpbiUgYygiT3RoZXJzIikpICU+JQ0KICBncm91cF9ieShDb3VudHJ5KSAlPiUNCiAgbXV0YXRlKGRlYXRoX3JhdGU9KERlYXRocyoxMDAvSW5mZWN0ZWQpICU+JSByb3VuZChkaWdpdHMgPSAxKSkgJT4lDQogIGZpbHRlcihyb3dfbnVtYmVyKCk9PW4oKSZEZWF0aHM+MSkgJT4lIHVuZ3JvdXAoKSAlPiUgDQphcnJhbmdlKEluZmVjdGVkICU+JSBkZXNjKCkpDQoNCiAgDQpjcm5fdGhlbWU8LQ0KICB0aGVtZV9taW5pbWFsKCkgKw0KICB0aGVtZSgNCiAgbGVnZW5kLnRpdGxlID0gZWxlbWVudF9ibGFuaygpLA0KICBsZWdlbmQudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gMTQpLA0KICBsZWdlbmQua2V5LnNpemUgPSB1bml0KDAuOCwgImNtIiksDQogIGxlZ2VuZC5rZXkud2lkdGggPSB1bml0KDIsImNtIiksDQogICNsZWdlbmQucG9zaXRpb249InRvcCIsDQogIHBsb3QubWFyZ2luPXVuaXQoYygwLjUsMC41LDAuNSwwLjUpLCJjbSIpLA0KICBheGlzLnRpdGxlLnggPSBlbGVtZW50X3RleHQoc2l6ZT0xNCxjb2xvdXIgPSAiZ3JleTMwIixtYXJnaW4gPSBtYXJnaW4odCA9IDE1KSksDQogIGF4aXMudGl0bGUueSA9IGVsZW1lbnRfdGV4dChzaXplPTE0LGNvbG91ciA9ICJncmV5MzAiLG1hcmdpbiA9IG1hcmdpbihyID0gMTUpKSwNCiAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoc2l6ZT0xMCxjb2xvdXIgPSAiZ3JleTQwIiksDQogIGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KHNpemU9MTEsY29sb3VyID0gImdyZXk0MCIpLA0KICBwbG90LnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemU9MTgsY29sb3VyID0gImdyZXk1IiksDQogIHBsb3Quc3VidGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZT0xMyxjb2xvdXIgPSAiZ3JleTQ1IikNCiAgKSAgDQoNCg0KYGBgDQoNCg0KYGBge3IgR2dwbG90IGZ1bmN0aW9ucywgaW5jbHVkZT1GQUxTRX0NCg0KY3JuX25ldyA8LSBmdW5jdGlvbihkYXRhLHZhcnk9IkRlYXRoc19uZXdfcGMiLHZhcng9ImRhdGUiLG1pbj0wLG1heD0xMDAwMDAwLG5uPTEwLHNwYW49MC40NSwgYnJrPTUwLCBwbHQ9IlNldDEiLCBkaXJlY3Rpb249MSwgcmVnaW9uPSJhbGwiLHN1YnRpdGxlPSIiKSB7DQoNCnlsYWI8LWNhc2Vfd2hlbigNCiAgdmFyeT09IkRlYXRoc19uZXciIH4gItCa0ZbQu9GM0LrRltGB0YLRjCDQvdC+0LLQuNGFINGB0LzQtdGA0YLQtdC5INCyINC00LXQvdGMIiwNCiAgdmFyeT09IkRlYXRoc19uZXdfcGMiIH4gItCU0LXQvdC90LAg0YHQvNC10YDQvdGW0YHRgtGMINC90LAgMSDQvNC70L0iLA0KICBUUlVFIH4gItCa0ZbQu9GM0LrRltGB0YLRjCDQvdC+0LLQuNGFINCy0LjQv9Cw0LTQutGW0LIg0LIg0LTQtdC90YwiKQ0KDQp4bGFiPC0gaWZlbHNlKHZhcng9PSJvcmQiLHBhc3RlMCgi0JrRltC70YzQutGW0YHRgtGMINC00L3RltCyINC/0L7Rh9C40L3QsNGO0YfQuCDQstGW0LQgIixzdGFydF9kLCIg0YHQvNC10YDRgtC10LkiKSwiIikNCg0KdGl0bGVsYWI8LWNhc2Vfd2hlbigNCiAgdmFyeT09IkRlYXRoc19uZXciIH4gItCa0ZbQu9GM0LrRltGB0YLRjCDQvdC+0LLQuNGFINGB0LzQtdGA0YLQtdC5INCy0ZbQtCBDT1ZJRC0xOSIsDQogIHZhcnk9PSJEZWF0aHNfbmV3X3BjIiB+ICLQmtGW0LvRjNC60ZbRgdGC0Ywg0L3QvtCy0LjRhSDRgdC80LXRgNGC0LXQuSDQstGW0LQgQ09WSUQtMTkg0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPIiwNCiAgVFJVRSB+ICLQmtGW0LvRjNC60ZbRgdGC0Ywg0L3QvtCy0LjRhSDQstC40L/QsNC00LrRltCyINCyINC00LXQvdGMIiApDQoNCnBsb3Q8LWdncGxvdChkYXRhLCBhZXNfc3RyaW5nKHg9dmFyeCx5PXZhcnksY29sb3IgPSAiQ291bnRyeSIpKSArDQogIGdlb21fcG9pbnQoc2l6ZT0xLjUsYWxwaGEgPSAwLjMpICsNCiAgZ2VvbV9zbW9vdGgobWV0aG9kID0gImxvZXNzIiwgc2U9RixzaXplPTEuNSwgc3BhbiA9IHNwYW4pICsNCiAgI3N0YXRfc21vb3RoKGFlcyh5PURlYXRoc19uZXcsIHg9b3JkKSwgZm9ybXVsYSA9IHkgfiBzKHgsIGsgPSA1KSwgbWV0aG9kID0iZ2FtIiwgc2UgPSBGQUxTRSxzaXplPTEuNSkgKw0KICAjc3RhdF9zbW9vdGgoYWVzKHk9RGVhdGhzX25ldywgeD1vcmQpLCBtZXRob2QgPSAibG0iLGZvcm11bGEgPSB5IH4gcG9seSh4LCA1KSwgc2UgPSBGQUxTRSxzaXplPTEuNSkgKw0KICAjc2NhbGVfeF9jb250aW51b3VzKGJyZWFrcyA9IHNlcSg1LCAyMDAsIDEwKSkgKw0KICB7aWYgKHZhcng9PSJvcmQiKSBzY2FsZV94X2NvbnRpbnVvdXMoYnJlYWtzID0gc2VxKDUsIDIwMCwgMTApKX0gKyANCiAge2lmICh2YXJ4PT0iZGF0ZSIpIHNjYWxlX3hfZGF0ZShkYXRlX2JyZWFrcz0iMiB3ZWVrcyIsZGF0ZV9sYWJlbHMgPSAiJWItJWUiKSB9ICsNCiAgc2NhbGVfeV9jb250aW51b3VzKGJyZWFrcyA9IHNlcSgwLCA3MDAwLCBicmspDQogICAgICAgICAgICAgICAgICAgICAsbGltaXRzID0gYygwLG1heChkYXRhWyxjKHZhcnkpXSkrMC41KmJyaykNCiAgICAgICAgICAgICAgICAgICAgICMsbGltaXRzID0gYygtNSwzMDAwKQ0KICAgICAgICAgICAgICAgICAgICAgKSArDQogICNzY2FsZV9saW5ldHlwZV9kaXNjcmV0ZSgpICsNCiAgI3NjYWxlX2xpbmV0eXBlX2lkZW50aXR5KCkgKw0KICAjc2NhbGVfbGluZXR5cGVfbWFudWFsKHZhbHVlcz1zYW1wbGUoYygxLDIpLCBucm93KHgpLHJlcGxhY2UgPSBUKSkrDQogIGxhYnMoeT15bGFiLCB4ID0geGxhYiwNCiAgICAgICB0aXRsZSA9IHRpdGxlbGFiLCANCiAgICAgICBzdWJ0aXRsZSA9IHN1YnRpdGxlDQogICAgICAgKSArICAgDQogIGNybl90aGVtZSArICAgc2NhbGVfY29sb3JfYnJld2VyKHBhbGV0dGUgPSBwbHQsZGlyZWN0aW9uID0gZGlyZWN0aW9uKSArDQogIHRoZW1lKHBsb3QudGl0bGUgPSBlbGVtZW50X3RleHQoY29sb3VyID0gInJlZDMiKSkNCg0KcmV0dXJuKHBsb3QpDQp9DQoNCg0KDQoNCmNybl90b3RhbF9kZWF0aCA8LSBmdW5jdGlvbihkYXRhLCB2YXI9IkRlYXRocyIsIG1pbiwgbWF4PTEwMDAwMDAsIG1pbl9wYz0wLCBicms9MjAwMCwgcGx0PSJTZXQxIiwgZGlyZWN0aW9uPTEsc3VidGl0bGU9IiIsbGluZXR5cGU9VCl7DQoNCnlsYWI8LWlmZWxzZSh2YXI9PSJEZWF0aHMiLCLQl9Cw0LPQsNC70YzQvdCwINC60ZbQu9GM0LrRltGB0YLRjCDQv9C+0LzQtdGA0LvQuNGFIiwi0JrRltC70YzQutGW0YHRgtGMINC/0L7QvNC10YDQu9C40YUg0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPIikNCnRpdGxlbGFiPC1pZmVsc2UodmFyPT0iRGVhdGhzIiwi0JfQsNCz0LDQu9GM0L3QsCDQutGW0LvRjNC60ZbRgdGC0Ywg0YHQvNC10YDRgtC10Lkg0LLRltC0IENPVklELTE5INCyINGA0ZbQt9C90LjRhSDQutGA0LDRl9C90LDRhSIsDQogICAgICAgICAgICAgICAgICLQl9Cw0LPQsNC70YzQvdCwINC60ZbQu9GM0LrRltGB0YLRjCDRgdC80LXRgNGC0LXQuSDQstGW0LQgQ09WSUQtMTkgKNC90LAgMSDQvNC70L0g0L3QsNGB0LXQu9C10L3QvdGPKSIpDQoNCg0KcGxvdDwtZ2dwbG90KGRhdGEgJT4lIGZpbHRlcihiZXR3ZWVuKHRvdGFsLG1pbixtYXgpJnRvdGFsKnRvdGFsX3BjPm1pbl9wYyksDQogICAgICAgICAgICAgYWVzX3N0cmluZyh4PSJvcmQiLHk9dmFyKSkgKyB7IA0KICBpZiAobGluZXR5cGU9PUYpICBnZW9tX2xpbmUoYWVzKGNvbG9yID0gQ291bnRyeSksIHNpemU9MS41KSB9ICsgew0KICBpZiAobGluZXR5cGUpICBnZW9tX2xpbmUoYWVzKGNvbG9yID0gQ291bnRyeSwgbGluZXR5cGUgPSBDb3VudHJ5KSxzaXplPTEuNSkgfSArIHsNCiAgaWYgKGxpbmV0eXBlKSAgc2NhbGVfbGluZXR5cGVfbWFudWFsKHZhbHVlcz1zYW1wbGUoYygxLDIpLCBucm93KGRhdGEpLHJlcGxhY2UgPSBUKSkgfSArDQogIHNjYWxlX3hfY29udGludW91cyhicmVha3MgPSBzZXEoNSwgMzYwLCA1KSkgKw0KICBzY2FsZV95X2NvbnRpbnVvdXMoYnJlYWtzID0gc2VxKDAsICAzMDAwMDAsIGJyaykpICsNCiAgI3NjYWxlX2xpbmV0eXBlX2Rpc2NyZXRlKCkgKw0KICAjc2NhbGVfbGluZXR5cGVfaWRlbnRpdHkoKSArDQogICNzY2FsZV9saW5ldHlwZV9tYW51YWwodmFsdWVzPXNhbXBsZShjKDEsMiksIG5yb3coeCkscmVwbGFjZSA9IFQpKSsNCiAgbGFicyh5PXlsYWIsIHggPSBwYXN0ZTAoItCa0ZbQu9GM0LrRltGB0YLRjCDQtNC90ZbQsiDQv9C+0YfQuNC90LDRjtGH0Lgg0LLRltC0ICIsc3RhcnRfZCwiINGB0LzQtdGA0YLQtdC5IiksDQogICAgICAgdGl0bGUgPSB0aXRsZWxhYiwgDQogICAgICAgc3VidGl0bGUgPSBzdWJ0aXRsZQ0KICAgICAgICMsIGNhcHRpb24gPSAiTXkgY2FwdGlvbiINCiAgICAgICApKw0KICBjcm5fdGhlbWUgKyAgIHNjYWxlX2NvbG9yX2JyZXdlcihwYWxldHRlID0gcGx0LGRpcmVjdGlvbiA9IGRpcmVjdGlvbikrDQogIHRoZW1lKHBsb3QudGl0bGUgPSBlbGVtZW50X3RleHQoY29sb3VyID0gInJveWFsYmx1ZTMiKSkNCg0KcmV0dXJuKHBsb3QpDQp9DQoNCg0KYGBgDQoNCtCU0LbQtdGA0LXQu9C+INC00LDQvdC40YUgLSBbRXVyb3BlYW4gQ2VudHJlIGZvciBEaXNlYXNlIFByZXZlbnRpb24gYW5kIENvbnRyb2xdKGh0dHBzOi8vd3d3LmVjZGMuZXVyb3BhLmV1L2VuL3B1YmxpY2F0aW9ucy1kYXRhL2Rvd25sb2FkLXRvZGF5cy1kYXRhLWdlb2dyYXBoaWMtZGlzdHJpYnV0aW9uLWNvdmlkLTE5LWNhc2VzLXdvcmxkd2lkZSkuDQoNCioq0JTQsNC90ZYg0L3QsCBgciBkYXkoU3lzLkRhdGUoKS0xKWAg0LrQstGW0YLQvdGPKioNCg0KPC9icj4NCiANCmBgYHtyIGluY2x1ZGU9RkFMU0V9DQoNCnRvdGFsX2RlYXRoX21pbjE8LTEwMDAwDQp0b3RhbF9kZWF0aF9taW4yPC0zMDAwDQp0b3RhbF9kZWF0aF9taW4zPC03MDANCnRvdGFsX2RlYXRoX21pbjQ8LTM1MA0KdG90YWxfZGVhdGhfbWluNTwtMjUwDQp0b3RhbF9kZWF0aF9taW42PC0xNTANCnRvdGFsX2RlYXRoX21pbjc8LTEwMA0KdG90YWxfZGVhdGhfbWluODwtNTANCg0KcGNfZGVhdGhfbWluMTwtMzAwDQpwY19kZWF0aF9taW4yPC0xMTANCnBjX2RlYXRoX21pbjM8LTU1DQpwY19kZWF0aF9taW40PC0xOA0KDQoNCmBgYA0KDQoNCg0KPC9icj4NCg0KIyDQlNC40L3QsNC80ZbQutCwINC60ZbQu9GM0LrQvtGB0YLRliDQvdC+0LLQuNGFINGB0LzQtdGA0YLQtdC5INC30LAg0LTQtdC90YwNCiMjIyDQmtGA0LDRl9C90Lgg0ZbQtyDQt9Cw0LPQsNC70YzQvdC+0Y4g0LrRltC70YzQutGW0YHRgtGOINGB0LzQtdGA0YLQtdC5INCx0ZbQu9GM0YjQtSBgciBwY19kZWF0aF9taW4xYCDQvdCwIDEg0LzQu9C9LiDQvdCw0YHQtdC70LXQvdC90Y8NCg0KPC9icj4NCg0KYGBge3IgZWNobz1GQUxTRSwgZmlnLmhlaWdodD02LCBmaWcud2lkdGg9MTB9DQoNCnN1YnRpdGxlPC1wYXN0ZSgi0JrRgNCw0ZfQvdC4INC3INC30LDQs9Cw0LvRjNC90L7RjiDQutGW0LvRjNC60ZbRgdGC0Y4g0YHQvNC10YDRgtC10Lkg0LHRltC70YzRiNC1ICIscGNfZGVhdGhfbWluMSwi0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPIikNCg0KIyYhKENvdW50cnk9PSJVUyImZGF0ZSAlaW4lYXMuRGF0ZShjKCIyMDIwLTA0LTE1IiwiMjAyMC0wNC0xNyIsIjIwMjAtMDQtMjMiKSkpDQpwbG90MW5ldzwtY3JuX25ldyhjcm4yICU+JSBmaWx0ZXIodG90YWxfcGM+cGNfZGVhdGhfbWluMSZEZWF0aHNfbmV3X3BjPDI1JnBvcERhdGEyMDE4PjcwMDAwMA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyEoQ291bnRyeT09IlNwYWluIiZkYXRlPT0iMjAyMC0wNS0yMSIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiAhKENvdW50cnk9PSJTcGFpbiImZGF0ZT4iMjAyMC0wNS0yMCIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSwNCiAgICAgICAgICAgICAgICAgIHZhcnkgPSAiRGVhdGhzX25ld19wYyIsIHZhcng9ImRhdGUiLG1pbj10b3RhbF9kZWF0aF9taW4yLGJyaz01LGRpcmVjdGlvbiA9IC0xLHBsdCA9ICJTZXQxIiwgc3BhbiA9IDAuNSxzdWJ0aXRsZSA9IHN1YnRpdGxlKQ0KDQojcGxvdDRuZXcNCmdncGxvdGx5KHBsb3QxbmV3K2dndGl0bGUoIiIpKQ0KYGBgDQoNCg0KDQo8L2JyPg0KDQojIyMg0JrRgNCw0ZfQvdC4INGW0Lcg0LfQsNCz0LDQu9GM0L3QvtGOINC60ZbQu9GM0LrRltGB0YLRjiDRgdC80LXRgNGC0LXQuSDQstGW0LQgYHIgcGNfZGVhdGhfbWluMmAg0LTQviAgYHIgcGNfZGVhdGhfbWluMWAg0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPDQoNCjwvYnI+DQoNCg0KYGBge3IgZWNobz1GQUxTRSwgZmlnLmhlaWdodD02LCBmaWcud2lkdGg9MTB9DQoNCiNzdWJ0aXRsZTwtcGFzdGUoItCa0YDQsNGX0L3QuCDQtyDQt9Cw0LPQsNC70YzQvdC+0Y4g0LrRltC70YzQutGW0YHRgtGOINGB0LzQtdGA0YLQtdC5INCy0ZbQtCA4MCDQtNC+IDIwMCDQvdCwIDEg0LzQu9C9LiDQvdCw0YHQtdC70LXQvdC90Y8iKQ0Kc3VidGl0bGU8LXBhc3RlKCLQmtGA0LDRl9C90Lgg0Lcg0LfQsNCz0LDQu9GM0L3QvtGOINC60ZbQu9GM0LrRltGB0YLRjiDRgdC80LXRgNGC0LXQuSDQstGW0LQgIixwY19kZWF0aF9taW4yLCIg0LTQviAiLCBwY19kZWF0aF9taW4xLCAi0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPIikNCg0KcGxvdDJuZXc8LWNybl9uZXcoY3JuMiAlPiUgZmlsdGVyKCAhQ291bnRyeSAlaW4lIGMoIkVjdWFkb3IiLCJMdXhlbWJvdXJnIikmRGVhdGhzX25ld19wYzw3Jg0KICBiZXR3ZWVuKHRvdGFsX3BjLHBjX2RlYXRoX21pbjIscGNfZGVhdGhfbWluMSkmcG9wRGF0YTIwMTg+NzAwMDAwKSwNCiAgICAgICAgICAgICAgICAgICB2YXJ5ID0gIkRlYXRoc19uZXdfcGMiLCB2YXJ4PSJkYXRlIiwgYnJrPTEsIGRpcmVjdGlvbiA9IDAsIHBsdCA9ICJTZXQxIiwgbj01LCBzcGFuID0gMC41NSwNCiAgc3VidGl0bGUgPSBzdWJ0aXRsZSkNCiMgcGxvdDRuZXcyDQoNCmdncGxvdGx5KHBsb3QybmV3K2dndGl0bGUoIiIpKQ0KYGBgDQoNCg0KPC9icj4NCg0KIyMjINCa0YDQsNGX0L3QuCDRltC3INC30LDQs9Cw0LvRjNC90L7RjiDQutGW0LvRjNC60ZbRgdGC0Y4g0YHQvNC10YDRgtC10Lkg0LLRltC0IGByIHBjX2RlYXRoX21pbjNgINC00L4gIGByIHBjX2RlYXRoX21pbjJgINC90LAgMSDQvNC70L0uINC90LDRgdC10LvQtdC90L3Rjw0KDQo8L2JyPg0KDQoNCmBgYHtyIGVjaG89RkFMU0UsIGZpZy5oZWlnaHQ9NiwgZmlnLndpZHRoPTEwfQ0Kc3VidGl0bGU8LXBhc3RlKCLQmtGA0LDRl9C90Lgg0Lcg0LfQsNCz0LDQu9GM0L3QvtGOINC60ZbQu9GM0LrRltGB0YLRjiDRgdC80LXRgNGC0LXQuSDQstGW0LQgIixwY19kZWF0aF9taW4zLCIg0LTQviAiLCBwY19kZWF0aF9taW4yLCAi0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPIikNCg0KcGxvdDNuZXc8LWNybl9uZXcoY3JuMiAlPiUgZmlsdGVyKERlYXRoc19uZXdfcGM8NCYNCiAgYmV0d2Vlbih0b3RhbF9wYyxwY19kZWF0aF9taW4zLHBjX2RlYXRoX21pbjIpJnBvcERhdGEyMDE4PjIxMDAwMDApLA0KICAgICAgICAgICAgICAgICAgIHZhcnkgPSAiRGVhdGhzX25ld19wYyIsYnJrPTEsIGRpcmVjdGlvbiA9IDAsIHBsdCA9ICJTZXQxIiwgbj01LCBzcGFuID0gMC41NSwNCiAgc3VidGl0bGUgPSBzdWJ0aXRsZSkNCiMgcGxvdDRuZXcyDQoNCmdncGxvdGx5KHBsb3QzbmV3K2dndGl0bGUoIiIpKQ0KYGBgDQoNCmBgYHtyIGVjaG89RkFMU0UsIGZpZy5oZWlnaHQ9NiwgZmlnLndpZHRoPTEwfQ0Kc3VidGl0bGU8LXBhc3RlKCLQmtGA0LDRl9C90Lgg0Lcg0LfQsNCz0LDQu9GM0L3QvtGOINC60ZbQu9GM0LrRltGB0YLRjiDRgdC80LXRgNGC0LXQuSDQstGW0LQgIixwY19kZWF0aF9taW40LCIg0LTQviAiLCBwY19kZWF0aF9taW4zLCAi0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPIikNCg0KcGxvdDNuZXc8LWNybl9uZXcoY3JuMiAlPiUgZmlsdGVyKERlYXRoc19uZXdfcGM8NyZkYXRlPicyMDIwLTA1LTE1JyYNCiAgYmV0d2Vlbih0b3RhbF9wYyxwY19kZWF0aF9taW40LDEwMDApJnBvcERhdGEyMDE4PjEzMDAwMDAwJnJlZ2lvbj09IkV1cm9wZSImQ291bnRyeSE9IlNwYWluIiksDQogICAgICAgICAgICAgICAgICAgdmFyeSA9ICJEZWF0aHNfbmV3X3BjIixicms9MSwgZGlyZWN0aW9uID0gMCwgcGx0ID0gIlBhaXJlZCIsIG49NSwgc3BhbiA9IDAuNTUsDQogIHN1YnRpdGxlID0gc3VidGl0bGUpDQojIHBsb3Q0bmV3Mg0KDQpnZ3Bsb3RseShwbG90M25ldytnZ3RpdGxlKCIiKSkNCmBgYA0KDQoNCmBgYHtyIHNlY29uZCB3YXZlLCBlY2hvPUZBTFNFLCBmaWcuaGVpZ2h0PTYsIGZpZy53aWR0aD0xMH0NCnN1YnRpdGxlPC1wYXN0ZSgi0JrRgNCw0ZfQvdC4LCDQtNC1INGB0L/QvtGB0YLQtdGA0ZbQs9Cw0ZTRgtGMY9GPINC00YDRg9Cz0LAg0YXQstC40LvRjyIpDQpwbG90X25ld19zZWM8LWNybl9uZXcoY3JuMiAlPiUgZmlsdGVyKERlYXRoc19uZXdfcGM8MTUmDQogIGJldHdlZW4odG90YWxfcGMsNiwxMDAwKSZwb3BEYXRhMjAxOD4yMDAwMDAwJkNvdW50cnkgJWluJSBjKCJJcmFuIiwiUm9tYW5pYSIsIlBvbGFuZCIsIkZyYW5jZSIpKSwNCiAgICAgICAgICAgICAgICAgICB2YXJ5ID0gIkRlYXRoc19uZXdfcGMiLGJyaz0xLCBkaXJlY3Rpb24gPSAwLCBwbHQgPSAiU2V0MSIsIG49NSwgc3BhbiA9IDAuNTUsDQogIHN1YnRpdGxlID0gc3VidGl0bGUpDQojIHBsb3Q0bmV3Mg0KDQpnZ3Bsb3RseShwbG90X25ld19zZWMrZ2d0aXRsZSgiIikpDQpgYGANCg0KDQo8L2JyPg0KDQojIyMg0JrRgNCw0ZfQvdC4LCDQtNC1INCy0ZbQtNCx0YPQstCw0ZTRgtGM0YHRjyDQt9GA0L7RgdGC0LDQvdC90Y8g0LTQtdC90L3QvtGXINGB0LzQtdGA0YLQvdC+0YHRgtGWDQoNCjwvYnI+DQoNCg0KYGBge3IgR3Jvd2luZywgZmlnLmhlaWdodD02LCBmaWcud2lkdGg9MTAsIGVjaG89RkFMU0V9DQpzdWJ0aXRsZTwtcGFzdGUoItCa0YDQsNGX0L3QuCwg0LTQtSDQstGW0LTQsdGD0LLQsNGU0YLRjNGB0Y8g0LfRgNC+0YHRgtCw0L3QvdGPINC00LXQvdC90L7RlyDRgdC80LXRgNGC0L3QvtGB0YLRliIpDQoNCnBsb3RfbmV3X2dyb3d0aDwtY3JuX25ldyhjcm4yICU+JSBmaWx0ZXIoIShDb3VudHJ5ICVpbiUgYygiSXJlbGFuZCIsIkVjdWFkb3IiKSkmdHJlbmQ+MS4xNyZuPjI1DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwb3BEYXRhMjAxOD4yNTAwMDAwJmJldHdlZW4odG90YWxEMzBfcGMsMTMsMTgwKSYNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWF0aHNfbmV3X3BjPDEwKSwNCiAgICAgICAgICAgICAgICAgICB2YXJ5ID0gIkRlYXRoc19uZXdfcGMiLCBicms9MSwgZGlyZWN0aW9uID0gMCwgcGx0ID0gIlBhaXJlZCIsIHNwYW4gPSAwLjQ1LA0KICAgICAgICAgICAgICAgICAgIHN1YnRpdGxlID0gc3VidGl0bGUpDQojIHBsb3Q0bmV3Mg0KDQpnZ3Bsb3RseShwbG90X25ld19ncm93dGgrZ2d0aXRsZSgiIikpDQpgYGANCg0KPC9icj4NCjwvYnI+DQoNCiMg0JTQuNC90LDQvNGW0LrQsCDQt9Cw0LPQsNC70YzQvdC+0Zcg0LrRltC70YzQutC+0YHRgtGWINGB0LzQtdGA0YLQtdC5INC90LAgMSDQvNC70L0uINC90LDRgdC10LvQtdC90L3Rjw0KPC9icj4NCg0KIyMjINCa0YDQsNGX0L3QuCDQtyDQutGW0LvRjNC60ZbRgdGC0Y4g0YHQvNC10YDRgtC10Lkg0LHRltC70YzRiNC1IDE4MCAg0L3QsCAxINC80LvQvS4g0L3QsNGB0LXQu9C10L3QvdGPDQoNCjwvYnI+DQoNCmBgYHtyIGVjaG89RkFMU0UsIGZpZy5oZWlnaHQ9NiwgZmlnLndpZHRoPTEwfQ0Kc3VidGl0bGU8LXBhc3RlKCLQmtGA0LDRl9C90Lgg0Lcg0LrRltC70YzQutGW0YHRgtGOINGB0LzQtdGA0YLQtdC5INCx0ZbQu9GM0YjQtSAxODAgINC90LAgMSDQvNC70L0uINC90LDRgdC10LvQtdC90L3RjyIpDQpwbG90X3RvdGFsX3BjPC1jcm5fdG90YWxfZGVhdGgoY3JuMiAlPiUgZmlsdGVyKHRvdGFsX3BjPjIwMCZwb3BEYXRhMjAxOD4yMDAwMDAwJkNvdW50cnkhPSJTcGFpbiIpLHZhciA9ICJEZWF0aHNfcGMiLG1pbiA9IDEwMCxicmsgPSAxMDAscGx0PSJQYWlyZWQiLGxpbmV0eXBlID0gRixzdWJ0aXRsZSA9IHN1YnRpdGxlKQ0KI3Bsb3Q0DQoNCmdncGxvdGx5KHBsb3RfdG90YWxfcGMrZ2d0aXRsZSgiIikpDQpgYGANCg0KDQoNCg0KPC9icj4NCjwvYnI+DQoNCiMg0KDRltCy0LXQvdGMINC70LXRgtCw0LvRjNC90L7RgdGC0ZYg0LIg0YDRltC30L3QuNGFINC60YDQsNGX0L3QsNGFIA0KDQo8L2JyPg0KDQpgYGB7ciBlY2hvPUZBTFNFLCBmaWcuaGVpZ2h0PTYsIGZpZy53aWR0aD0xMCwgZHBpID0gMjAwfQ0KZGV0aF9taW48LTUwDQppbmZfbWluPC0xMDAwDQp5PC1jcm4zICU+JSBmaWx0ZXIoSW5mZWN0ZWQ+aW5mX21pbiYocmVnaW9uPT0iRXVyb3BlInxDb3VudHJ5PT0iQnJhemlsIikpICU+JSANCiAgbXV0YXRlKGhqdXN0PWlmZWxzZShDb3VudHJ5ICVpbiUgYygiR2VybWFueSIsIkNoaW5hIiksLTAuNywwLjUpLA0KICAgICAgICAgdmp1c3Q9aWZlbHNlKENvdW50cnkgJWluJSBjKCJHZXJtYW55IiwiQ2hpbmEiKSwwLjMsLTIpLA0KICAgICAgICAgaGp1c3Q9aWZlbHNlKENvdW50cnkgJWluJSBjKCJVUyIsIlN3aXR6ZXJsYW5kIiwiR2VybWFueSIsIklyYW4iLCJUdXJrZXkiLCJDYW5hZGEiKSwwLjUsaGp1c3QpLA0KICAgICAgICAgdmp1c3Q9aWZlbHNlKENvdW50cnkgJWluJSBjKCJVUyIsIlN3aXR6ZXJsYW5kIiwiR2VybWFueSIsIklyYW4iLCJUdXJrZXkiLCJDYW5hZGEiKSwxLjUsdmp1c3QpLA0KICAgICAgICAgKQ0KDQoNCnNjYWxlPC01MDAwMA0KTGV0YWw8LWdncGxvdCh5KSAgKyANCiAgICAjZ2VvbV9iYXIoYWVzKHg9Q291bnRyeSwgeT1JbmZlY3RlZCksc3RhdD0iaWRlbnRpdHkiLCBmaWxsPSJ0YW4xIiwgY29sb3VyPSJzaWVubmEzIikrDQogIGdlb21fY29sKGFlcyh4PXJlb3JkZXIoQ291bnRyeSwtSW5mZWN0ZWQpLCB5PUluZmVjdGVkKSxmaWxsPSJpbmRpYW5yZWQyIikrDQogIGdlb21fbGluZShhZXMoeD1yZW9yZGVyKENvdW50cnksLUluZmVjdGVkKSwgeT1kZWF0aF9yYXRlKnNjYWxlKSwgY29sb3I9InN0ZWVsYmx1ZTQiLCBncm91cCA9IDEsIHNpemUgPSAxLjUpICsgDQogIGdlb21fcG9pbnQoYWVzKHg9cmVvcmRlcihDb3VudHJ5LC1JbmZlY3RlZCksIHk9ZGVhdGhfcmF0ZSpzY2FsZSksIGNvbG9yPSJzdGVlbGJsdWU0Iiwgc2l6ZSA9IDMpICsNCiAgZ2VvbV90ZXh0KGFlcyhsYWJlbD1kZWF0aF9yYXRlLCB4PUNvdW50cnksIHk9ZGVhdGhfcmF0ZSpzY2FsZSksIGNvbG91cj0ic3RlZWxibHVlNCIsdmp1c3QgPSAgeSR2anVzdCwgaGp1c3Q9eSRoanVzdCxzaXplID0gMy4xKSsNCiAgICAjZ2VvbV90ZXh0KGFlcyhsYWJlbD1SZXNwb25zZSwgeD1ZZWFyLCB5PTAuOTUqUmVzcG9uc2UpLCBjb2xvdXI9ImJsYWNrIikrDQogICAgc2NhbGVfeV9jb250aW51b3VzKA0KICAgICAgI2xpbWl0cyA9IGMoMCwgMzAwMDAwMCksDQogICAgICBicmVha3MgPSBzZXEoMCwgMjAwMDAwMCwgMTAwMDAwKSwNCiAgICAgIHNlYy5heGlzID0gc2VjX2F4aXMofi4vc2NhbGUsIGJyZWFrcyA9IHNlcSgwLCA1MCwgMSksIG5hbWUgPSAi0JvQtdGC0LDQu9GM0L3RltGB0YLRjCwgJSIpLA0KICAgICAgZXhwYW5kID0gYygwLDApLA0KICAgICAgbGFiZWxzID0gc2NhbGVzOjpjb21tYSMsdHJhbnM9J2xvZycNCiAgICAgICkgKw0KICAgIGxhYnMoeT0i0JrRltC70YzQutGW0YHRgtGMINC30LDRgNCw0LbQtdC90LjRhSIsIHggPSAiIiwNCiAgICAgICB0aXRsZSA9ICLQm9C10YLQsNC70YzQvdGW0YHRgtGMINCy0ZbQtCBDT1ZJRC0xOSDQsiDRgNGW0LfQvdC40YUg0LrRgNCw0ZfQvdCw0YUiLCANCiAgICAgICBzdWJ0aXRsZSA9IHBhc3RlKCLQmtGA0LDRl9C90Lgg0Lcg0LrRltC70YzQutGW0YHRgtGOINC30LDRgNCw0LbQtdC90LjRhSDQsdGW0LvRjNGI0LUiLGluZl9taW4pDQogICAgICAgKSArIGNybl90aGVtZSArDQogIHRoZW1lKHBsb3QubWFyZ2luPXVuaXQoYygwLjUsMC41LDAuMSwwLjEpLCJjbSIpLA0KICAgICAgICBheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZSA9IDkwLCBoanVzdCA9IDEsICB2anVzdCA9IDAuMywgc2l6ZSA9IDEzLGNvbG91ciA9ICJncmV5NSIpLA0KICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gOCksDQogICAgICAgIGF4aXMudGl0bGUueCA9IGVsZW1lbnRfdGV4dChzaXplPTE0LG1hcmdpbiA9IG1hcmdpbih0ID0gMTUpKSwNCiAgICAgICAgYXhpcy50aXRsZS55ID0gZWxlbWVudF90ZXh0KHNpemU9MTQsY29sb3VyID0gImdyZXkzNSIsbWFyZ2luID0gbWFyZ2luKHIgPSAxMCxsPTEwLGI9MTApKSkNCg0KICANCg0KTGV0YWwNCg0KYGBgDQoNCg0KDQoNCg0KDQoNCmBgYHtyIGluY2x1ZGU9RkFMU0V9DQpnZ3NhdmUoJ0Q6XFxNeSBkb2N1bWVudHNcXCFHb29nbGVEcml2ZVxcUHVibGljXFxjb3ZpZC0xOVxcZGVhdGhzX2NvdW50cmllcy5wbmcnLHBsb3Q9TGV0YWwsDQogICAgICAgZHBpPTIwMCwgaGVpZ2h0ID0gNix3aWR0aCA9IDEwLHVuaXRzID0gImluIikNCmdnc2F2ZSgnRDpcXE15IGRvY3VtZW50c1xcIUdvb2dsZURyaXZlXFxQdWJsaWNcXGNvdmlkLTE5XFxkZWF0aF9uZXdfcGMxLnBuZycscGxvdD1wbG90MW5ldywNCiAgICAgICBkcGk9MzAwLCBoZWlnaHQgPSA2LHdpZHRoID0gMTAsdW5pdHMgPSAiaW4iKQ0KZ2dzYXZlKCdEOlxcTXkgZG9jdW1lbnRzXFwhR29vZ2xlRHJpdmVcXFB1YmxpY1xcY292aWQtMTlcXGRlYXRoX25ld19wYzIucG5nJyxwbG90PXBsb3QybmV3LA0KICAgICAgIGRwaT0zMDAsIGhlaWdodCA9IDYsd2lkdGggPSAxMCx1bml0cyA9ICJpbiIpDQpnZ3NhdmUoJ0Q6XFxNeSBkb2N1bWVudHNcXCFHb29nbGVEcml2ZVxcUHVibGljXFxjb3ZpZC0xOVxcZGVhdGhfbmV3X3BjMy5wbmcnLHBsb3Q9cGxvdDNuZXcsDQogICAgICAgZHBpPTMwMCwgaGVpZ2h0ID0gNix3aWR0aCA9IDEwLHVuaXRzID0gImluIikNCmdnc2F2ZSgnRDpcXE15IGRvY3VtZW50c1xcIUdvb2dsZURyaXZlXFxQdWJsaWNcXGNvdmlkLTE5XFxwbG90X25ld19ncm93dGgucG5nJyxwbG90PXBsb3RfbmV3X2dyb3d0aCwNCiAgICAgICBkcGk9MzAwLCBoZWlnaHQgPSA2LHdpZHRoID0gMTAsdW5pdHMgPSAiaW4iKQ0KZ2dzYXZlKCdEOlxcTXkgZG9jdW1lbnRzXFwhR29vZ2xlRHJpdmVcXFB1YmxpY1xcY292aWQtMTlcXHBsb3RfdG90YWxfcGMucG5nJyxwbG90PXBsb3RfdG90YWxfcGMsDQogICAgICAgZHBpPTMwMCwgaGVpZ2h0ID0gNix3aWR0aCA9IDEwLHVuaXRzID0gImluIikNCg0KDQoNCmBgYA0KDQo=